76 research outputs found

    Peeling and Nibbling the Cactus: Subexponential-Time Algorithms for Counting Triangulations and Related Problems

    Get PDF
    Given a set of n points S in the plane, a triangulation T of S is a maximal set of non-crossing segments with endpoints in S. We present an algorithm that computes the number of triangulations on a given set of n points in time n^{ (11+ o(1)) sqrt{n} }, significantly improving the previous best running time of O(2^n n^2) by Alvarez and Seidel [SoCG 2013]. Our main tool is identifying separators of size O(sqrt{n}) of a triangulation in a canonical way. The definition of the separators are based on the decomposition of the triangulation into nested layers ("cactus graphs"). Based on the above algorithm, we develop a simple and formal framework to count other non-crossing straight-line graphs in n^{O(sqrt{n})} time. We demonstrate the usefulness of the framework by applying it to counting non-crossing Hamilton cycles, spanning trees, perfect matchings, 3-colorable triangulations, connected graphs, cycle decompositions, quadrangulations, 3-regular graphs, and more

    Quasi-Parallel Segments and Characterization of Unique Bichromatic Matchings

    Full text link
    Given n red and n blue points in general position in the plane, it is well-known that there is a perfect matching formed by non-crossing line segments. We characterize the bichromatic point sets which admit exactly one non-crossing matching. We give several geometric descriptions of such sets, and find an O(nlogn) algorithm that checks whether a given bichromatic set has this property.Comment: 31 pages, 24 figure

    Counting Houses of Pareto Optimal Matchings in the House Allocation Problem

    Get PDF
    Let A,BA,B with A=m|A| = m and B=nm|B| = n\ge m be two sets. We assume that every element aAa\in A has a reference list over all elements from BB. We call an injective mapping τ\tau from AA to BB a matching. A blocking coalition of τ\tau is a subset AA' of AA such that there exists a matching τ\tau' that differs from τ\tau only on elements of AA', and every element of AA' improves in τ\tau', compared to τ\tau according to its preference list. If there exists no blocking coalition, we call the matching τ\tau an exchange stable matching (ESM). An element bBb\in B is reachable if there exists an exchange stable matching using bb. The set of all reachable elements is denoted by EE^*. We show Ei=1,,mmi=Θ(mlogm).|E^*| \leq \sum_{i = 1,\ldots, m}{\left\lfloor\frac{m}{i}\right\rfloor} = \Theta(m\log m). This is asymptotically tight. A set EBE\subseteq B is reachable (respectively exactly reachable) if there exists an exchange stable matching τ\tau whose image contains EE as a subset (respectively equals EE). We give bounds for the number of exactly reachable sets. We find that our results hold in the more general setting of multi-matchings, when each element aa of AA is matched with a\ell_a elements of BB instead of just one. Further, we give complexity results and algorithms for corresponding algorithmic questions. Finally, we characterize unavoidable elements, i.e., elements of BB that are used by all ESM's. This yields efficient algorithms to determine all unavoidable elements.Comment: 24 pages 2 Figures revise

    Disjoint compatibility graph of non-crossing matchings of points in convex position

    Get PDF
    Let X2kX_{2k} be a set of 2k2k labeled points in convex position in the plane. We consider geometric non-intersecting straight-line perfect matchings of X2kX_{2k}. Two such matchings, MM and MM', are disjoint compatible if they do not have common edges, and no edge of MM crosses an edge of MM'. Denote by DCMk\mathrm{DCM}_k the graph whose vertices correspond to such matchings, and two vertices are adjacent if and only if the corresponding matchings are disjoint compatible. We show that for each k9k \geq 9, the connected components of DCMk\mathrm{DCM}_k form exactly three isomorphism classes -- namely, there is a certain number of isomorphic small components, a certain number of isomorphic medium components, and one big component. The number and the structure of small and medium components is determined precisely.Comment: 46 pages, 30 figure

    Complexity of Token Swapping and its Variants

    Full text link
    In the Token Swapping problem we are given a graph with a token placed on each vertex. Each token has exactly one destination vertex, and we try to move all the tokens to their destinations, using the minimum number of swaps, i.e., operations of exchanging the tokens on two adjacent vertices. As the main result of this paper, we show that Token Swapping is W[1]W[1]-hard parameterized by the length kk of a shortest sequence of swaps. In fact, we prove that, for any computable function ff, it cannot be solved in time f(k)no(k/logk)f(k)n^{o(k / \log k)} where nn is the number of vertices of the input graph, unless the ETH fails. This lower bound almost matches the trivial nO(k)n^{O(k)}-time algorithm. We also consider two generalizations of the Token Swapping, namely Colored Token Swapping (where the tokens have different colors and tokens of the same color are indistinguishable), and Subset Token Swapping (where each token has a set of possible destinations). To complement the hardness result, we prove that even the most general variant, Subset Token Swapping, is FPT in nowhere-dense graph classes. Finally, we consider the complexities of all three problems in very restricted classes of graphs: graphs of bounded treewidth and diameter, stars, cliques, and paths, trying to identify the borderlines between polynomial and NP-hard cases.Comment: 23 pages, 7 Figure

    Parameterized Hardness of Art Gallery Problems

    Get PDF
    Given a simple polygon P on n vertices, two points x,y in P are said to be visible to each other if the line segment between x and y is contained in P. The Point Guard Art Gallery problem asks for a minimum set S such that every point in P is visible from a point in S. The Vertex Guard Art Gallery problem asks for such a set S subset of the vertices of P. A point in the set S is referred to as a guard. For both variants, we rule out a f(k)*n^{o(k/log k)} algorithm, for any computable function f, where k := |S| is the number of guards, unless the Exponential Time Hypothesis fails. These lower bounds almost match the n^{O(k)} algorithms that exist for both problems
    corecore